#include <cpp_primer.h>

using namespace std;

int& foo()  // int foo()
{
    int x = 42;
    
    return x; // 返回局部变量 x 的引用

}

/* int* foo() */
/* { */
/*     int *px = new int(42); */

/*     return px; */
/* } */
/* // 在main函数内delete pa; */

int main()
{
    int a = foo(); // 切片错误：将引用赋值给非引用类型的变量，只复制了 x 的一部分数据

    std::cout << "a = " << a << std::endl; // 输出错误的结果
    
    return 0;
}
